package main

import (
	"filedemo/service"
	"filedemo/utils"
	"fmt"
	"os"
	"strconv"
	"strings"
	"time"
)

var defaultPath string = "D:\\wamp"

func main() {
	// 读取excel文件
	path, _ := os.Getwd()
	rows, err := utils.ReadFile(path + "/find.xlsx")
	if err != nil {
		fmt.Printf("文件不存在：%s/find.xlsx", path)
		return
	}
reinspect:
	rootPath := defaultPath
	// 先获取要遍历的目录
	fmt.Printf("输入搜索目录并回车(默认目录：%s)：", rootPath)
	var inputPath string
	fmt.Scanln(&inputPath)
	inputPath = strings.TrimSpace(inputPath)
	if inputPath != "" {
		rootPath = inputPath
	}
	if _, err := os.Stat(rootPath); err != nil {
		fmt.Println("您输入的目录不存在")
		// 因为控制接收参数使用的是地址，所有这里要清空才可以
		inputPath = ""
		rootPath = defaultPath
		goto reinspect
	}
	fmt.Println("文件搜索中......")
	// 在指定目录中查询文件
	xls := service.FindByList(rootPath, rows)
	// 保存到excel文件中
	utils.ExportFile(path + "/result" + strconv.FormatInt(time.Now().Unix(), 10) + ".xlsx", xls);
	fmt.Printf("共查找到%d个文件\n", len(xls))
	fmt.Printf("按回车键退出")
	var exitStr string
	fmt.Scanln(&exitStr)
}